Fk:loadTranslationTable{
  ["plum__yuming_choose"] = "育名"
}

local skill = fk.CreateSkill{
  name = "plum__yuming_choose",
}

--- check types num
---@param cards integer[]
---@return boolean
local check = function (cards)
  for _, id in ipairs(cards) do
    for _, _id in ipairs(cards) do
      if id ~= _id and Fk:getCardById(id).type == Fk:getCardById(_id).type then
        return false
      end
    end
  end
  return true
end

skill:addEffect("active", {
  can_use = Util.FalseFunc,
  card_filter = function (self, player, to_select)
    return table.contains(player:getCardIds("h"), to_select)
  end,
  target_num = 0,
  target_filter = Util.FalseFunc,
  feasible = function (self, player, selected, selected_cards)
    if #selected_cards > 0 and #selected_cards <= 3 then
      return check(selected_cards)
    end
  end
})

return skill